There are many different techniques for generating an animation of a three dimensional object on a computer display. Originally, the animated figures (for example, the faces) looked very much like wooden characters, since the animation was not very good. In particular, the user would typically see an animated face, yet its features and expressions would be static. Perhaps the mouth would open and close, and the eyes might blink, but the facial expressions, and the animation in general, resembled a wood puppet. The problem was that these animations were typically created from scratch as drawings, and were not rendered using an underlying 3D model to capture a more realistic appearance, so that the animation looked unrealistic and not very life-like. More recently, the animations have improved so that a skin may cover the bones of the figure to provide a more realistic animated figure.
While such animations are now rendered over one or more deformation grids to capture a more realistic appearance for the animation, often the animations are still rendered by professional companies and redistributed to users. While this results in high-quality animations, it is limited in that the user does not have the capability to customize a particular animation, for example, of him or herself, for use as a virtual personality. With the advance features of the Internet or the World Wide Web, these virtual personas will extend the capabilities and interaction between users. It would thus be desirable to provide a 3D modeling system and method which enables the typical user to rapidly and easily create a 3D model from an image, such as a photograph, that is useful as a virtual personality.
Typical systems also required that, once a model was created by the skilled animator, the same animator was required to animate the various gestures that you might want to provide for the model. For example, the animator would create the animation of a smile, a hand wave or speaking which would then be incorporated into the model to provide the model with the desired gestures. The process to generate the behavior/gesture data is slow and expensive and requires a skilled animator. It is desirable to provide an automatic mechanism for generating gestures and behaviors for models without the assistance of a skilled animator. It is to these ends that the present invention is directed.